home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 002 / chedit.arc / CHEDIT.DOC < prev    next >
Encoding:
Text File  |  1986-04-18  |  53.5 KB  |  1,651 lines

  1.  
  2.  
  3.  
  4. 1  WHY A CHARACTER SET EDITOR?
  5.  
  6. On an IBM-PC or compatible computer using a Color Graphics Adapter (CGA),
  7. there are several display modes.  You can have straight text in several modes,
  8. such as 25 by 40 or 25 by 80 in either black & white or color, or you can
  9. select a graphics display mode.  In graphics, however, you still have the
  10. option of using text on the screen.  Although the hardware will not print
  11. characters to the screen, the computer's BIOS software is capable of generating
  12. the standard letters, numbers, and special characters of normal ASCII.
  13.  
  14. All this would be mundane unless there was something you could do about
  15. changing the characters to suit your tastes.  Fortunately, there is a way of
  16. doing this.  While the normal ASCII characters are defined for graphics modes
  17. in the BIOS, the extended ASCII characters (those characters with codes
  18. between 128 and 255) are not defined, and are available for the programmer to
  19. use.  Thus, while in graphics mode, you can define and display your own custom
  20. characters.
  21.  
  22. The only problem remaining is how to create and display these characters. 
  23. Drawing 128 different shapes, each of which has 64 elements is tedious at
  24. best, and telling the computer how to use them is even more difficult.  It is
  25. these tasks that the programs in the CHEDIT package address.
  26.  
  27. The CHEDIT package consists of a character editor and libraries of support
  28. routines that allow you to use the customized characters in your programs.
  29.  
  30. The required hardware is an IBM-PC, XT, AT or compatible with a color graphics
  31. card.  A monochrome text adapter card is not capable of using the created
  32. character sets or the CHEDIT program.
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. 2  RUNNING THE CHEDIT PROGRAM
  71.  
  72. To run the CHEDIT program, enter the following at the DOS prompt:
  73.  
  74.                          CHEDIT <filename>
  75.  
  76. where <filename> is optional, and is the name of the character set you want
  77. to edit.  If an extension is not supplied, .CHR is appended to the filename.
  78.  
  79. Upon entry to the program, if a character set name has not specified at the 
  80. DOS prompt, or if that file cannot be found, you are given several options:
  81.  
  82.   1) Enter the name of the character set file.  If an extension is no 
  83.      supplied, .CHR is appended to the filename.
  84.  
  85.   2) Enter a Return on a blank line to create a new character set.
  86.  
  87.   3) Press the F1 key to select a name from a directory listing of all 
  88.      files with a .CHR extension.  The Esc key aborts the directory 
  89.      selection process, and behaves as if you had used a blank filename.
  90.  
  91.   4) Press Esc to abort the program. 
  92.  
  93.  
  94. Once a character set has been selected, the main menu follows:
  95.  
  96. 1) Save the current character set.
  97.  
  98. You are asked for a name, and if you were already working on a character 
  99. set, a Return press alone defaults to the original name.  Pressing Esc 
  100. returns you to the main menu.  If the filename does not have an extension,
  101.  
  102. 2) Read a new character set.
  103.  
  104. If you have done any editing, whether or not any changes have actually
  105. occured, you are warned if the current character set has not been saved,
  106. and asked if you want to continue.  If you select No, you are returned to
  107. the main menu.
  108.  
  109. If you continue, you are asked for the name of the character set.  The 
  110. filename given is checked for an extension and if none is found .CHR is
  111. appended.  A Return press by itself at the name prompt will return you to 
  112. the main menu.  Pressing F1 allows you to select a directory to be checked 
  113. for .CHR files.  When the directory is displayed, pressing Return selects 
  114. the currently highlighted file, and Esc returns you to the main menu.
  115.  
  116. 3) Edit Individual characters (edit one character at a time).
  117.  
  118.      See the description of individual character editing below.
  119.  
  120. 4) Edit Multiple characters (edit multiple characters at a time).
  121.  
  122.      See the description of multiple character editing below.
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. 5) Change the cursor blink speed.
  137.  
  138. The default cursor in CHEDIT blinks regularly so that its location is more
  139. visible.  However, if you do not like the blink speed, or do not want it to
  140. blink at all, this option will allow you to change it.  You are asked
  141. to select from Slow, Regular, Fast, or No blinking for your cursor.  Simply
  142. press the indicated letter, or press Return to use the default regular.
  143.  
  144. 6) Quit the program.
  145.  
  146. Although Esc will stop the program elsewhere, a Q is required to exit the
  147. program from the main menu.  This is done because Esc is used to return from
  148. editing to the main menu, and a double character would stop the program before
  149. you have a chance to save your work.  If you have done any editing, whether or 
  150. not any changes have actually occured, you are warned if the current 
  151. character set has not been saved, and asked if you want to continue.  If you 
  152. select No, you are returned to the main menu. 
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. 3  INDIVIDUAL CHARACTER EDITING
  203.  
  204. When Individual character editing is desired, only 1 character is displayed
  205. in large format to be modified at a time. The primary advantage of this mode
  206. is that it is easier to see what is being done, and character selection is
  207. simpler.  This mode is used primarily when working on individual characters,
  208. such as letters in an alphabet, when you want to see the maximum detail.
  209.  
  210.    When editing individual characters, the screen has 4 basic parts:
  211.  
  212.    1) a display of all programmable characters at the top of the screen,
  213.       arranged in a 4 by 32 matrix, and set off from the rest of the screen
  214.       by a box.
  215.  
  216.    2) a large box broken into an 8 by 8 grid, which is the large character
  217.       display.  Each little box represents 1 pixel in the character being
  218.       edited.
  219.  
  220.    3) a character box.  This is the "life-size" character being edited,
  221.       set apart from the rest of the screen in its own box.  Note that the
  222.       character set displayed at the top of the screen is updated as
  223.       characters are edited as well.
  224.  
  225.    4) a text area, where informational messages, such as currently
  226.       available options, the code of the character being edited, etc, are
  227.       displayed.
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268. 3.1  SELECTING A CHARACTER TO EDIT:
  269.  
  270. Before editing begins, you must select a character to work on from the set
  271. displayed at the top of the screen.  Pressing Esc at this time will return
  272. you to the main menu.
  273.  
  274. To select a character, you may either move the highlighted square around
  275. the characters via the cursor keys, or press the N (for numeric) key to
  276. enter the numeric code of the desired character.  When moving the highlighted
  277. square, the current code of the character, along with a large image of the
  278. character, is displayed.
  279.  
  280. When using the cursor control keys on the numeric keypad, both the arrow
  281. keys (2,4,6, and 8) and the other keys (1,3,7, and 9) are active.  The
  282. arrow keys move the cursor in the indicated direction, while the other
  283. cursor keys move the cursor in a diagonal.  When the cursor passes the
  284. boundary of the displayed characters, it wraps back to the opposite side
  285. of the display.
  286.  
  287. The numeric code for each character is a number, either from 0 to 127, or
  288. from 128 to 255, representing the location of the character.  The values 0
  289. to 127 represent the character's location in the editing set, while the
  290. values 128 to 255 represent the extended ASCII code used to reference the
  291. character from various languages or system calls.  The routines used
  292. within the editor will recognize either code.  When using the N option in
  293. selecting characters, a prompt of "which code?" appears, and at this point
  294. you enter a number.  This number is taken modulo 128, and the highlighted
  295. square is placed in this character position.
  296.  
  297. When you are satisfied with your selection, press either S (for select)
  298. or Return to begin editing this character.
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334. 3.2  EDITING A CHARACTER:
  335.  
  336. There are many options available while editing characters, and they will
  337. be discussed in functional groups below.  Note that for all cursor movement,
  338. if the cursor is moved off the edge of the character, it returns on the 
  339. opposite side of the character.  For example, if the cursor is moved up from
  340. the top row, it returns on the bottom row.
  341.  
  342.  
  343. 3.2.1  CURSOR MOVEMENT GROUP
  344. (Use the key indicated on the numeric keypad for the command):
  345.  
  346. DOWN  - Also the 2 key on the numeric keypad.  This moves the cursor 1 row
  347.         down in the character being edited.
  348.  
  349. UP    - Also the 8 key on the numeric keypad.  This moves the cursor 1 row up
  350.         in the character being edited.
  351.  
  352. LEFT  - Also the 4 key on the numeric keypad.  This moves the cursor 1 column
  353.         left in the character being edited.
  354.  
  355. RIGHT - Also the 6 key on the numeric keypad.  This moves the cursor 1 column
  356.         right in the character being edited.
  357.  
  358.  
  359. The following keys move the cursor in diagonal directions.
  360.  
  361. HOME - Also the 7 key on the numeric keypad.  This key, between the UP and LEFT
  362.        arrows, moves the cursor UP 1 row and LEFT 1 column.
  363.  
  364. PgUp - Also the 9 key on the numeric keypad.  This key, between the UP and
  365.        RIGHT arrows, moves the cursor UP 1 row and RIGHT 1 column.
  366.  
  367. END  - Also the 1 key on the numeric keypad.  This key, between the DOWN and
  368.        LEFT arrows, moves the cursor DOWN 1 row and LEFT 1 column.
  369.  
  370. PgDn - Also the 3 key on the numeric keypad.  This key, between the DOWN and
  371.        RIGHT arrows, moves the cursor DOWN 1 row and RIGHT 1 column.
  372.  
  373.  
  374.  
  375.  
  376.  
  377.  
  378.  
  379.  
  380.  
  381.  
  382.  
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400. 3.2.2  "SPACEBAR" GROUP
  401.  
  402. This group of functions is the basic mechanism for setting and clearing
  403. pixels in a character.  The commands in this group are
  404. (Use the capital letter for the command itself):
  405.  
  406. SPACEBAR   - change the state of the pixel, according to the mode defined       
  407.              below.
  408. Set mode   - when the spacebar is pressed, the current pixel is set
  409.              (turned on).
  410. Clear mode - when the spacebar is pressed, the current pixel is cleared
  411.              (turned off).
  412. Xor mode   - when the spacebar is pressed, the current pixel is Xor'ed with a
  413.              'set'.  The result is that the pixel is flipped to its opposite
  414.              state.  i.e. a set pixel is cleared, and a cleared pixel is set.
  415.  
  416. Notes on mode: 1) Xor is the default mode.
  417.                2) The Set, Clear, and Xor modes are mutually exclusive,  
  418.                   that is, you can only be in one of these modes at a time.
  419.  
  420. Auto mode  - when the cursor enters a new pixel, that pixel is automatically
  421.              set/cleared/xor'd according to the current mode.  When the space
  422.              bar is pressed, the pixel is again set/cleared/xored.  This is 
  423.              useful when you want to flip the pixel back to its original state
  424.              (xor mode) or you have just selected auto mode, in which case the
  425.              current pixel is not set/cleared/xored (as the cursor has not 
  426.              entered a new pixel). 
  427.  
  428.  
  429. 3.2.3  "WHOLE CHARACTER" GROUP (enter the capital letter for the command): 
  430.  
  431. Zero    - Zero out a character.  This turns off all pixels in a character. 
  432. Fill    - Fill in a character.  This turns on all pixels in a character. 
  433. Inverse - Invert a character.  This flips the state of all pixels in a          
  434.           character.  (i.e. all on pixels are turned off, and all off pixels 
  435.           are turned on.) 
  436.  
  437.  
  438. 3.2.4  "NEXT-CHARACTER" GROUP (enter the capital letter for the command):
  439.  
  440. Next - Get another character to edit.  The procedure is the same as when you
  441.        first entered individual character editing.
  442.  
  443. Get  - Copy (get) the image of another character into the current character.
  444.        The procedure is the same as selecting a character to edit when you
  445.        first enter individual character editing.  If you decide that you do
  446.        not want to overwrite the current image, simply place the highlighted
  447.        square on the original character and press return.
  448.  
  449. Put  - Copy (put) the image of the current character into another character.
  450.        The procedure is the same as selecting a character to edit when you
  451.        first enter individual character editing.  If you decide that you do
  452.        not want to overwrite another image, simply place the highlighted
  453.        square on the original image and press return.
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466. 3.2.5  "MIRROR IMAGE" GROUP (enter the capital letter for the command):
  467.  
  468. Horizontal mirror - change the current character to its image as seen in a
  469.        mirror placed on its horizontal axis.  The top row becomes the last
  470.        row, the 2nd row becomes the next-to-last row, etc.  As an example,
  471.        the letter A, when horizontal mirrored, wpi;d be standing on its
  472.        point.  Doing another horizontal mirror will undo this, so that the
  473.        A points upwards again.
  474.  
  475. Vertical mirror - Change the current character to its image as seen in a
  476.        mirror placed on its vertical axis.  The leftmost column becomes the
  477.        the rightmost column, the next-to-leftmost column becomes the next-
  478.        to-rightmost column, etc.  As an example, the less-than symbol, <,
  479.        would become the greater-than symbol, >, when vertical mirrored.
  480.        Doing another vertical mirror will undo this, so that it becomes a
  481.        less-than symbol again.
  482.  
  483. Exchange - exchange rows and columns in a character.  This has the effect of
  484.        mirroring the character around a diagonal from the upper left to the
  485.        lower right corner of the character box.  It means that the top row
  486.        becomes the leftmost column, the 2nd row becomes the next-to-leftmost
  487.        column, etc.  For example, an exclamation point, !, when exchanged,
  488.        would be laying on its side, with the bottom dot on the right.  Doing
  489.        another exchange would undo this, so that it is normal again.
  490.  
  491.  
  492. 3.2.6  "ROTATE" GROUP (enter the function keys indicated for the command):
  493.  
  494. All rotate functions move the character within the box.  Any row or column of
  495. pixels that is rotated "off" an edge wraps back to the opposite edge, to fill
  496. the row or column that is left vacant by moving the character.
  497.  
  498.      F1 - Rotate the character 1 row down.
  499.      F2 - Rotate the character 1 row up.
  500.      F3 - Rotate the character 1 column left.
  501.      F4 - Rotate the character 1 column right.
  502.  
  503.  
  504. 3.2.7  "SHIFT" GROUP (enter the function keys indicated for the command):
  505.  
  506. All shift functions move the character within the box.  Any row or column of
  507. pixels that is shifted "off" an edge is lost.  The row or column on the
  508. opposite edge that is left vacant is filled with blanks.
  509.  
  510.      F5 - Shift the character 1 row down.
  511.      F6 - Shift the character 1 row up.
  512.      F7 - Shift the character 1 column left.
  513.      F8 - Shift the character 1 column right.
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532. 3.3  "UNDO" FUNCTIONS (enter the capital letter for the command):
  533.  
  534. The undo functions allow you to erase a mistake you just made, or let you
  535. experiment with changes and quickly bring back an older version of the 
  536. character if you don't like what you see.
  537.  
  538. Undo - undo the last change ONLY.  For example, if you hit the Z (for Zero)
  539.        key, the character will be erased, and U will restore the image. If
  540.        you hit the Z key and then press the spacebar (thus setting/clearning/
  541.        xoring a pixel), using U will only undo the change in the individual
  542.        pixel, not the erased character.
  543.  
  544.        Undo works by swapping images with the current screen image, so
  545.        that Undo will Undo itself.
  546.  
  547.        When a character is first called up for editing, the Undo image is set
  548.        to the original image, so that Undo will do nothing until you have made
  549.        a change.
  550.  
  551.        The Restore command (see below) has no effect on the saved Undo image.
  552.  
  553. Restore - Like Undo, this command swaps the current image with a saved image.
  554.        Unlike the Undo command, however, the saved image is not updated with
  555.        every change of the character.  The saved image is only changed when
  556.        you use Restore or the Keep command (see below).  Thus, you can start
  557.        editing a character, Restore the original for comparison, Restore
  558.        back the edited copy and continue editing.  Or, after editing, Restore
  559.        back the original, edit the original into another version of the
  560.        character, and use Restore compare it to the 1st version of the
  561.        character.
  562.  
  563.        Since both Undo and Restore swap saved images with the currently
  564.        displayed image, the two functions may interact with each other.  For
  565.        example, an Undo will move the previous image to the screen, and put
  566.        the current image in the Undo buffer.  A Restore will then move the
  567.        screen image (from the Undo) to the Restore buffer, and place the
  568.        image from the Restore buffer onto the screen.  A final Undo will then
  569.        move the current screen image, which was in the Restore buffer, into
  570.        the Undo buffer, and move the image in the Undo buffer, which was the
  571.        original screen image, back to the screen.  In this way, the Undo
  572.        saved image and the Restore saved image have been swapped, and the
  573.        screen image is untouched.
  574.  
  575. Keep - Keep the current screen image in the Restore buffer.  This allows you
  576.        to save a copy of the current character for possible later restoration,
  577.        without swapping screen images.
  578.  
  579. Original - Replace the current character image with the image that the
  580.        character had when it was first selected for editing.  This is the
  581.        ultimate undo.
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598. 3.4  "TRYOUT" MODE (enter "T" for this function):
  599.  
  600.     This mode allows you to "try out" the current character set by allowing
  601.     you to type characters onto a blank screen.  Pressing the Esc key from
  602.     this mode allows you to return to editing.
  603.  
  604.     When in Tryit mode, the following keys on the numeric keypad
  605.  
  606.                   Home   Up    PgUp
  607.                   Right        Left
  608.                   End    Down  PgDn
  609.  
  610.     move the cursor, with Home, PgUp, End, and PgDn moving the cursor in a
  611.     diagonal direction.  The cursor wraps to the opposite side of the screen
  612.     when it passes the screen boundary.
  613.  
  614.     Please note that keys such as Return and Backspace do not have their
  615.     expected function.  They will instead display the symbol associated with
  616.     with the ASCII value of that key.
  617.  
  618.     When Tryit mode is first entered, the screen will be filled with spaces
  619.     (or whatever symbol is associated with the ASCII value 32).  After you
  620.     leave Tryit, coming back later will present the screen as you left it.
  621.     Thus, you can try a block of text, leave and edit the character set, then
  622.     return and see how the text looks with the new characters without having
  623.     to retype them.
  624.  
  625.     Both the character set being edited and the machine's resident character
  626.     set are available in Tryit mode.  See the functions listed below for
  627.     details on using both.
  628.  
  629.     The following functions are availble via the indicated function keys in
  630.     Tryit mode:
  631.  
  632.     F1 - Clear the screen and display both the character set being edited and
  633.          the machine's resident character set.
  634.  
  635.     F3 - Clear the screen to spaces and DO NOT replot the display.  The
  636.          screen does not re-plot, to give you relief in the event that the
  637.          space character is not blank.
  638.  
  639.     F2 - Toggle 40/80 column mode.  The screen starts out with 40 columns, and
  640.          pressing the F2 key will switch the screen to 80 columns and back.
  641.          Note that characters entered in the right half of the screen in 80
  642.          column mode will not be displayed when you switch back to 40 column
  643.          mode, but will still be there if you switch back to 80 columns.
  644.          Clearing the screen via either F1 or F3 (see above) will clear the
  645.          entire 80 columns, even if you are in 40 column mode.
  646.  
  647.     F4 - Toggle resident/editing character set on the displayed characters.
  648.          For example, You can type a sentence in the editing character set,
  649.          press F4 to see it in the machine's resident character set, then
  650.          press F4 again to return it to the editing character set.  Another
  651.          example is to use F1 to display both character sets, then F4 to
  652.          switch them.
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.     F6 - Toggle resident/editing character set on characters being typed.
  666.          When you enter Tryit mode, the characters you type are in the
  667.          editing character set.  Pressing F6 will change the characters
  668.          being typed to the machine's resident character set.  Pressing F6
  669.          again will change back to the editing character set.
  670.  
  671.     F8 - Change the color of characters being typed (40 column mode only).
  672.          When you start in Tryit mode, characters are white.  Pressing F8
  673.          change the color of characters being typed from white to cyan to
  674.          magenta, and back to white.  Characters in 80 column mode are
  675.          available only in white.
  676.  
  677.     F10 - Help!  Print a brief description of the available function keys.
  678.  
  679.  
  680.  
  681.  
  682.  
  683. 3.5  MISCELLANEOUS FUNCTIONS (enter the indicated keys for the command):
  684.  
  685. F10 - The help key.  It displays a list of the available commands, and a
  686.       brief explanation of each.  The list is several pages long, and you
  687.       can return to editing without looking through the entire help list by
  688.       pressing the Esc key.
  689.  
  690. Esc - When you are editing a character, you can return to the main menu by
  691.       pressing the Esc key.
  692.  
  693.  
  694.  
  695.  
  696.  
  697.  
  698.  
  699.  
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730. 4  MULTIPLE CHARACTER EDITING
  731.  
  732.    When editing multiple characters, up to 35 characters in a 5 by 7 matrix
  733. are displayed in large format to be edited at once.  The primary advantages of
  734. this is the ability to edit pictures larger than 1 character, and the ease
  735. in which mult-character pictures or border outline characters may be aligned.
  736. There is a small disadvantage in that each picture is somewhat smaller and
  737. harder to see, and the selection process is somewhat more involved.
  738.  
  739.    When editing multiple characters, the screen has 5 basic parts:
  740.  
  741.    1) a display of all programmable characters at the top of the screen,              
  742.       arranged in a 4x32 matrix, and set off from the rest of the screen by a
  743.       box.
  744.  
  745.    2) the editing matrix, a 5 by 7 array of boxes, each of which is broken
  746.       into an 8 by 8 grid, which is the large character display.  Each little
  747.       box represents 1 pixel in a character being edited.
  748.  
  749.    3) a character box.  This is the "life-size" picture of the
  750.       characters being edited, set apart from the rest of the screen in
  751.       its own box.  Note that the character set displayed at the top
  752.       of the screen is updated as characters are edited as well.
  753.  
  754.    4) a text area, where informational messages, such as currently
  755.       available options are displayed.
  756.  
  757.    5) a status area, where the current mode of the space bar (set/clear/xor)
  758.       and the auto status are displayed.  This is in the upper right hand
  759.       corner.
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796. 4.1  SELECTING MULTIPLE CHARACTERS TO EDIT
  797.  
  798. Before editing begins, you must select the locations in the editing matrix
  799. to work on, and the characters they contain.  Pressing Esc at this time will
  800. return you to the main menu.
  801.  
  802. The first step is to select a location in the editing grid.  One of the
  803. large editing boxes will be highlighed, and this highlight may be moved with
  804. the cursor keys.  The arrow keys (2,4,6, and 8) move the highlighted box
  805. vertically and horizontally, while the other keys (1,3,7, and 9) move the
  806. cursor in a diagonal.  When the highlighted box goes past a boundary, it wraps
  807. to the opposite side.  When it is in the desired location, you may select the
  808. character to edit at this point by pressing either S (for Select) or Return. 
  809. (Note: Although it may seem more "natural" to select which character to edit
  810. and then its location, the program has you select the location first, so that
  811. it knows where to display the character being selected.)
  812.  
  813. The next step is to select the character to edit in this location, either
  814. via the cursor keys or the N (numeric) option.  A highlighted square appears
  815. in the characters at the top of the screen, which is moved via the cursor keys. 
  816. The arrow keys (2,4,6, and 8) move that direction, while the other keys
  817. (1,3,7, and 9) move the box in a diagonal.  When the cursor passes the
  818. boundary of the displayed characters, it wraps back to the opposite side of
  819. the display.
  820. The numeric code for each character is a number, either from 0 to 127 or
  821. from 128 to 255, representing the location of the character.  The values from
  822. 0 to 127 represent the character's location in the editing set, while the
  823. values 128 to 255 represent the extended ASCII code used to reference the
  824. the character from various languages or system calls.  The routines used
  825. within the editor will recognize either code.  When using the N option in
  826. selecting characters, a prompt of "?" will appear, and at this point you
  827. enter a number.  This number is taken modulo 128, and the highlighted square
  828. is placed in this character position.
  829.  
  830. When you are satisfied with your selection, press either S (for Select) or
  831. Return to return to selecting editing locations.  At this time, a new
  832. option becomes available, that of pressing E to Edit the currently selected
  833. characters.  If you wish to keep selecting characters, proceed with selecting
  834. character locations, else press E to edit or Esc to return to the main menu.
  835.  
  836. There are three things to note at this point:
  837.  
  838.    1) A character may be edited at only 1 location in the editing matrix.  If
  839.       you attempt to edit the same character in 2 locations, you are warned
  840.       "No Duplicates".  Press any key to continue selecting characters.
  841.  
  842.    2) Only 1 character may be edited at 1 location in the editing grid.  If you
  843.       try to select a second character for that location, it overwrites the
  844.       original selection.
  845.  
  846.    3) When you move the highlighted box in the editing matrix, you will find
  847.       that the highlighted square in the character set has moved along with
  848.       it.  This makes selection of blocks of characters easy.
  849.  
  850.  
  851.  
  852.  
  853.  
  854.  
  855.  
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862. 4.2  EDITING MULTIPLE CHARACTERS
  863.  
  864. All of the options available while editing individual characters are also 
  865. available while editing multiple characters, plus many others.   
  866.  
  867. For all cursor movements, if the cursor is moved off an edge of the editing
  868. matrix, it return on the opposite side of the matrix.  For example, if the
  869. cursor is moved off the top row of the top of the editing matrix, it returns
  870. on the bottom row of the bottom of the matrix.  The cursor does not wrap
  871. when it crosses a boundary within the matrix.
  872.  
  873. The cursor is not limited to traveling within boxes defined in the editing
  874. matrix  (i.e., the cursor can be in a box without a character in it).  This
  875. is most useful when Getting additional characters to edit.  See the
  876. description of the Get command below.
  877.  
  878.  
  879.  
  880.  
  881.  
  882.  
  883.  
  884.  
  885.  
  886.  
  887.  
  888.  
  889.  
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.  
  897.  
  898.  
  899.  
  900.  
  901.  
  902.  
  903.  
  904.  
  905.  
  906.  
  907.  
  908.  
  909.  
  910.  
  911.  
  912.  
  913.  
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.  
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928. 4.2.1  CURSOR MOVEMENT GROUP (enter the key indicated on the numeric 
  929.        keypad for the command):
  930.  
  931. DOWN  - Also the 2 key on the numeric keypad.  This moves the cursor 1 row
  932.         down in the character being edited.
  933. UP    - Also the 8 key on the numeric keypad.  This moves the cursor 1 row up
  934.         in the character being edited.
  935. LEFT  - Also the 4 key on the numeric keypad.  This moves the cursor 1 column
  936.         left in the character being edited.
  937. RIGHT - Also the 6 key on the numeric keypad.  This moves the cursor 1 column
  938.         right in the character being edited.
  939.  
  940.  
  941. The following keys move the cursor in diagonal directions.
  942.  
  943. HOME - Also the 7 key on the numeric keypad.  This key, between the UP and LEFT
  944.        arrows, moves the cursor UP 1 row and LEFT 1 column.
  945. PgUp - Also the 9 key on the numeric keypad.  This key, between the UP and
  946.        RIGHT arrows, moves the cursor UP 1 row and RIGHT 1 column.
  947. END  - Also the 1 key on the numeric keypad.  This key, between the DOWN and
  948.        LEFT arrows, moves the cursor DOWN 1 row and LEFT 1 column.
  949. PgDn - Also the 3 key on the numeric keypad.  This key, between the DOWN and
  950.        RIGHT arrows, moves the cursor DOWN 1 row and RIGHT 1 column.
  951.  
  952.  
  953. The cursor may also be moved one box in the editing matrix at a time, through
  954. the use of the Alt key and the numeric keypad, as follows.
  955.  
  956. Alt-DOWN - (Alt-2).  This moves the cursor 1 box down in the editing matrix.
  957. Alt-UP - (Alt-8).  This moves the cursor 1 bow up in the editing matrix.
  958. Alt-LEFT - (Alt-4).  This moves the cursor 1 box left in the editing matrix.
  959. Alt-RIGHT - (Alt-6).  This moves the cursor 1 box right in the editing matrix.
  960.  
  961.  
  962. The following keys move the cursor a box at a time in diagonal directions.
  963.  
  964. Alt-HOME - (Alt-7).  This moves the cursor 1 box up and 1 box left in the
  965.           editing matrix.
  966. Alt-PgUp - (Alt-9).  This moves the cursor 1 box up and 1 box right in the
  967.           editing matrix.
  968. Alt-END - (Alt-1).  This moves the cursor 1 box down and 1 box left in the
  969.           editing matrix.
  970. Alt-PgDn - (Alt-3).  This moves the cursor 1 box down and 1 box right in the
  971.           editing matrix.
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.  
  987.  
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994. 4.2.2  "SPACEBAR" GROUP
  995.  
  996. This group of functions is the basic mechanism for setting and clearing
  997. pixels in the characters.  The commands in this group are (use the capital 
  998. letter for the command itself):
  999.  
  1000. SPACEBAR - change the state of the pixel, according to the mode defined below.
  1001.  
  1002. Set mode - when the spacebar is pressed, the current pixel is set (turned on).
  1003.  
  1004. Clear mode - when the spacebar is pressed, the current pixel is cleared
  1005.            (turned off).
  1006.  
  1007. Xor mode - when the spacebar is pressed, the current pixel is Xor'd with a
  1008.            'set'.  The result is that the pixel is flipped to its opposite
  1009.            state, i.e., a set pixel is cleared, and a cleared pixel is set.
  1010.            Xor mode is the default mode. 
  1011.  
  1012. For all modes in multiple character editing, the state of the pixel is changed
  1013. ONLY if the cursor is in a location in the editing matrix that has a character
  1014. in it.  If it is an empty location, the space bar has no effect.
  1015.  
  1016. Notes on mode: 1) Xor is the default mode.
  1017.                2) The Set, Clear, and Xor modes are mutually exclusive,  
  1018.                   that is, you can only be in one of these modes at a time.
  1019.                3) You may not change modes when the cursor is in an empty box.
  1020.  
  1021. Auto mode - When the cursor enters a new pixel, that pixel is automatically
  1022.             set/cleared/xored according to the current mode, if the cursor
  1023.             is in a box that has an editing character in it.  If this
  1024.             location in the editing matrix is empty, auto mode has no effect.
  1025.             When the space bar is pressed, the pixel is again set/cleared/
  1026.             xored.  This is useful when you want to flip the pixel back to
  1027.             its original state (xor mode) or if you have just selected auto
  1028.             mode, in which case the current pixel is not set/cleared/xored
  1029.             (as the cursor has not entered a new pixel).
  1030.             Auto mode may be changed when the cursor is in an empty box.
  1031.  
  1032.  
  1033. 4.2.3  "WHOLE CHARACTER" GROUP (enter the capital letter for the command):
  1034.  
  1035. Zero    - Zero out a character.  This turns off all pixels in the current
  1036.           character.  If the cursor is in an empty box, this command has no
  1037.           effect.
  1038.  
  1039. Fill    - Fill in a character.  This turns on all pixels in the current 
  1040.           character.  If the cursor is in an empty box, this command has 
  1041.           no effect.
  1042.  
  1043. Inverse - Invert a character.  This flips the state of all pixels in the
  1044.           current character.  If the cursor is in an empty box, this command 
  1045.           has no effect.
  1046.  
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060. 4.2.4  "ALL CHARACTERS" GROUP (enter the indicated keys for the command):
  1061.  
  1062. Alt-Z - Zero out all characters in the current editing matrix.  This turns
  1063.         off all pixels in all characters.  The cursor does NOT have to be
  1064.         in a used location in the editing matrix.
  1065.  
  1066. Alt-F - Fill in all characters in the current editing matrix.  This turns
  1067.         on all pixels in all characters.  The cursor does NOT have to be
  1068.         in a used location in the editing matrix.
  1069.  
  1070. Alt-I - Invert all characters in the current editing matrix.  This flips the
  1071.         state of all pixels in all characters.  The cursor does NOT have to
  1072.         be in a used location in the editing matrix.
  1073.  
  1074.  
  1075. 4.2.5  "NEXT CHARACTER" GROUP (enter the capital letter for the command):
  1076.  
  1077. Next - Get another set of characters to edit.  The procedure is the same as
  1078.        when you first entered multiple character editing.
  1079.  
  1080. Get  - Copy (get) the image of another character into the current character.
  1081.        The proceudre is the same as selecting a character to edit after you
  1082.        have selected its location in the editing matrix.  If you decide that
  1083.        you do not want to overwrite the current image, simply place the
  1084.        highlighted square on the original character and press return.
  1085.        When editing multiple characters, you also have the option to extend
  1086.        the list of characters being edited.  If the cursor is in an unused
  1087.        location in the editing matrix, pressing G will first prompt you with
  1088.        "into?", and allow you to select a character to edit, in the same
  1089.        fashion as before.  Then, you are prompted with "from?", at which time
  1090.        you may also initalize the editing character with the image from
  1091.        character.  Pressing S or Return a 2nd time without moving the
  1092.        highlighted square will use the current image of the character.
  1093.        As before, you may only edit a character in 1 location in the editing
  1094.        matrix.  If you attempt to edit a character a 2nd time, you will be
  1095.        warned "No Duplicates".
  1096.  
  1097. Put  - Copy (put) the image of the current character into another character.
  1098.        The procedure is the same as selecting a character to edit after you
  1099.        have selected its location in the editing matrix.  If you decide that
  1100.        you do not want to overwrite another image, simply place the
  1101.        highlighted square on the original image and press return.
  1102.  
  1103.  
  1104.  
  1105.  
  1106.  
  1107.  
  1108.  
  1109.  
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126. 4.2.6  "MIRROR-IMAGE" GROUP (enter the capital letter for the command):
  1127.  
  1128. Horizontal mirror - change the character currently being edited to its image
  1129.      as seen in a mirror placed on its horizontal axis.  The top row becomes
  1130.      the last row, the 2nd row becomes the next-to-last row, etc.  As an
  1131.      example, the letter A, when horizontally mirrored, would be standing on
  1132.      its point.  Doing another horizontal mirror will undo this, so that the
  1133.      A points upwards again.  If the cursor is in an empty box, this command
  1134.      has no effect.
  1135.  
  1136. Vertical mirror - change the character currently being edited to its image
  1137.      as seen in a mirror placed on its vertical axis.  The leftmost column
  1138.      becomes the rightmost column, the next-to-leftmost column becomes the
  1139.      next-to-rightmost column, etc.  As an example, the less-than symbol, <,
  1140.      would become the greater-than symbol, >, when vertical mirrored.  Doing
  1141.      another vertical mirror will undo this, so that it becomes a less-than
  1142.      symbol again.  If the cursor is in an empty box, this command has no
  1143.      effect.
  1144.  
  1145. Exchange - exchange rows and columns in the character currently being edited.
  1146.      This has the effect of mirroring the character around a diagonal from the
  1147.      upper left to the lower right corner of the charcter box.  It means that
  1148.      the top row becomes the leftmost column, the 2nd row becomes the
  1149.      next-to-leftmost column, etc.  For example, an exclamation point, !, when
  1150.      exchanged, would be laying on its side, with the bottom dot on the right. 
  1151.      Doing another exchange would undo this, so that it is normal again.
  1152.  
  1153.  
  1154.  
  1155.  
  1156.  
  1157.  
  1158.  
  1159.  
  1160.  
  1161.  
  1162.  
  1163.  
  1164.  
  1165.  
  1166.  
  1167.  
  1168.  
  1169.  
  1170.  
  1171.  
  1172.  
  1173.  
  1174.  
  1175.  
  1176.  
  1177.  
  1178.  
  1179.  
  1180.  
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192. 4.2.7  "ALTER-EVERYTHING" GROUP (enter the indicated keys for the command):
  1193.  
  1194. Alt-H - horizontal mirror all characters being edited.  The effect on each
  1195.         character is as described above, and the relative positions of all
  1196.         characters are changed so that the image as a whole is mirrored.
  1197.         The cursor does not have to be in an occupied location in the editing
  1198.         matrix for this command.
  1199.  
  1200. Alt-V - vertical mirror all characters being edited.  The effect on each
  1201.         character is as described above, and the relative positions of all
  1202.         characters are changed so that the image as a whole is mirrored.
  1203.         The cursor does not have to be in an occupied location in the editing
  1204.         matrix for this command.
  1205.  
  1206. Alt-E - exchange rows and columns for all characters being edited.  The effect
  1207.         on each character is as described above, and the relative positions of
  1208.         all characters are changed so that the image as a whole is mirrored.
  1209.         As the editing matrix is not square, this command will report "too
  1210.         many columns" if there is any character in the 6th or 7th column and
  1211.         wait for a keypress before continuing.  The cursor does not have to be
  1212.         in an occupied location in the editing matrix for this command.
  1213.  
  1214. CAVEAT: All of the above commands change the location of the characters in the
  1215.         editing matrix, which can have unwanted effects in some circumstances.
  1216.         If you use one of the above commands, then use the Get command to add
  1217.         a character to the editing matrix IN THE ORIGINAL POSITION OF ONE OF
  1218.         THE CHARACTERS THAT WAS MOVED, and then use Alt-Restore or
  1219.         Alt-Original, the program will attempt to move the characters back to
  1220.         their original position.  The result is that the character that was
  1221.         added overlays the original character in that position.  Nothing has
  1222.         been hurt inside your character set, the original character is simply
  1223.         unavailable for single character commands (multi-character commands
  1224.         work fairly normally).
  1225.  
  1226.         There are several possible solutions to this problem, none of which
  1227.         we find satisfactory.  1) You could be prohibited from Getting
  1228.         characters into boxes that would be overlaid by Alt-R or Alt-O, but
  1229.         that is too arbitrary a restriction.  2) Getting a character into
  1230.         such a box could mean that the corresponding character will not be
  1231.         moved in an Alt-R or Alt-O, but that defeats the purpose of the
  1232.         "undo" commands.  3) the new character could be moved, but as the
  1233.         program does not know what the transformation is between the current
  1234.         and the restored locations (as there can be many Alt-H, Alt-V, and
  1235.         Alt-E commands between the stored locations and the current locations),
  1236.         the placement of the new character would have to be arbitrary.  This
  1237.         messes up your neat arrangement.  If you have a good suggestion for 
  1238.         this "problem", we would like to hear about it.
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  
  1244.  
  1245.  
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  
  1251.  
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258. 4.2.8  "ROTATE" GROUP (enter the function keys indicated for the command):
  1259.  
  1260. All rotate functions move the character within its box.  Any row or column
  1261. of pixels that is rotated "off" an edge wraps back to the opposite edge,
  1262. to fill the row or column that is left vacant by moving the character.
  1263. If the cursor is in an empty box, the command has no effect.
  1264.  
  1265. F1 - Rotate the character 1 row down.
  1266. F2 - Rotate the character 1 row up.
  1267. F3 - Rotate the character 1 column left.
  1268. F4 - Rotate the character 1 column right.
  1269.  
  1270.  
  1271. 4.2.9  "SHIFT" GROUP (enter the function keys indicated for the command):
  1272.  
  1273. All shift functions move the character within its box.  Any row or column
  1274. of pixels that is shifted "off" an edge is lost.  The row or column on the
  1275. opposite edge that is left vacant is filled with blanks.  If the cursor is 
  1276. in an empty box, the command has no effect.
  1277.  
  1278. F5 - Shift the character 1 row down.
  1279. F6 - Shift the character 1 row up.
  1280. F7 - Shift the character 1 column left.
  1281. F8 - Shift the character 1 column right.
  1282.  
  1283.  
  1284. 4.2.10  "ROTATE ROW" GROUP (enter the keys indicated for the function):
  1285.  
  1286. All row rotate functions rotate an entire row of characters in the editing
  1287. matrix as if they were one extended character.  Occupied boxes do not have to
  1288. be contiguous.  Any row or column that is rotated "off" an edge wraps back to
  1289. the opposite edge, to fill the row or column that was left vacant.
  1290. The cursor does not have to be in an occupied location to use these commands.
  1291.  
  1292. Ctrl-F1 - rotate all characters in the current matrix row down one row.
  1293. Ctrl-F2 - rotate all characters in the current matrix row up one row.
  1294. Ctrl-F3 - rotate all characters in the current matrix row left one column.
  1295. Ctrl-F4 - rotate all characters in the current matrix row right one column.
  1296.  
  1297.  
  1298. 4.2.11  "SHIFT ROW" GROUP (enter the keys indicated for the function):
  1299.  
  1300. All row shift functions shift an entire row of characters in the editing
  1301. matrix as if they were one extended character.  Occupied boxes do not have to
  1302. be contiguous.  Any row or column that is shifted "off" an edge is lost.  The
  1303. row or column on the opposite edge that was left vacant is filled with
  1304. blanks.  The cursor does not have to be in an occupied location to use 
  1305. these commands.
  1306.  
  1307. Ctrl-F5 - shift all characters in the current matrix row down one row.
  1308. Ctrl-F6 - shift all characters in the current matrix row up on row.
  1309. Ctrl-F7 - shift all characters in the current matrix row left one column.
  1310. Ctrl-F8 - shift all characters in the current matrix row right one column.
  1311.  
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324. 4.2.12  "ROTATE COLUMN" GROUP (enter the keys indicated for the function):
  1325.  
  1326. All column rotate functions rotate an entire column of characters in the
  1327. editing matrix as if they were one extended character.  Occupied boxes do not
  1328. have to be contiguous.  Any row or column that is rotated "off" an edge wraps
  1329. back to the opposite edge, to fill the row or column that was left vacant.
  1330. The cursor does not have to be in an occupied location to use these commands.
  1331.  
  1332. Shift-F1 - rotate all characters in the current matrix column down one row.
  1333. Shift-F2 - rotate all characters in the current matrix column up one row.
  1334. Shift-F3 - rotate all characters in the current matrix column left one column.
  1335. Shift-F4 - rotate all characters in the current matrix column right one column.
  1336.  
  1337.  
  1338. 4.2.13  "SHIFT COLUMN" GROUP (enter the keys indicated for the function):
  1339.  
  1340. All column shift functions shift an entire column of characters in the editing
  1341. matrix as if they were one extended character.  Occupied boxes do not have to
  1342. be contiguous.  Any row or column that is shifted "off" an edge is lost.  The
  1343. row or column on the opposite edge that was left vacant is filled with blanks.
  1344. The cursor does not have to be in an occupied location to use these commands.
  1345.  
  1346. Shift-F5 - shift all characters in the current matrix column down one row.
  1347. Shift-F6 - shift all characters in the current matrix column up one row.
  1348. Shift-F7 - shift all characters in the current matrix column left one column.
  1349. Shift-F8 - shift all characters in the current matrix column right one column.
  1350.  
  1351.  
  1352. 4.2.14  "ROTATE MATRIX" GROUP (enter the keys indicated for the function):
  1353.  
  1354. All matrix rotate functions rotate all characters in the editing matrix as if
  1355. they were one extended character.  Occupied boxes do not have to be contiguous.
  1356. Any row or column that is rotated "off" an edge wraps back to the opposite
  1357. edge, filling the row or column that was left vacant.  The cursor does not 
  1358. have to be in an occupied location to use the commands.
  1359.  
  1360. Alt-F1 - rotate the entire matrix down one row.
  1361. Alt-F2 - rotate the entire matrix up one row.
  1362. Alt-F3 - rotate the entire matrix left one column.
  1363. Alt-F4 - rotate the entire matrix right one column.
  1364.  
  1365.  
  1366. 4.2.15  "SHIFT MATRIX" GROUP (enter the keys indicated for the function):
  1367.  
  1368. All matrix shift function shift all characters in the editing matrix as if
  1369. they were one extended character.  Occupied boxes do not have to be contiguous.
  1370. Any or or column that is shifted "off" an edge is lost.  The row or column
  1371. on the opposite edge that was left vacant is filled with blanks.
  1372. The cursor does not have to be in an occupied location to use the commands.
  1373.  
  1374. Alt-F5 - shift the entire matrix down one row.
  1375. Alt-F6 - shift the entire matrix up one row.
  1376. Alt-F7 - shift the entire matrix left one column.
  1377. Alt-F8 - shift the entire matrix right one column.
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390. 4.3  UNDO FUNCTIONS
  1391.  
  1392. The undo functions allow you to erase a mistake you just made, or let you
  1393. experiment with changes and quickly bring back an older version of the 
  1394. characters if you don't like what you see.
  1395.  
  1396. 4.3.1  "UNDO" GROUP (enter the capital letter for the command):
  1397.  
  1398. Undo - undo the last change ONLY.  For example, you hit the Z (for Zero) key,
  1399.        the character will be erased, and U will restore the image.  If you
  1400.        hit the Z key and then press the spacebar (thus setting/clearing/xoring
  1401.        a pixel), using U will only undo the change in the individual pixel,
  1402.        not the erased character.  The cursor does not have to be in an
  1403.        occupied location to use the Undo command.
  1404.  
  1405.        Undo works by swapping images with the current screen image, so that
  1406.        Undo will Undo itself.  When a character is first called up for editing,
  1407.        the Undo image is set to the original image, so that Undo will do nothing
  1408.        until you have made a change.
  1409.  
  1410.        The Restore command (see below) has no effect on the saved Undo image.
  1411.        Undo, when doing multiple character editing, will Undo ALL characters
  1412.        at once.  Thus, if you use Alt-f (and fill all characters being edited),
  1413.        Undo will restore all of them, not just the current character.  Although
  1414.        it might be nice if each character had it's own Undo (along with a
  1415.        global Undo), for various technical reasons it is not practical. 
  1416.  
  1417. Restore - Like Undo, this command swaps the current screen image with a saved
  1418.        image.  Unlike the Undo command, however, restore affects only one
  1419.        character at a time, and the cursor must be in a occupied location.
  1420.        Also unlike the undo command, the saved image is not updated with
  1421.        every change of the character.  The saved image is only changed
  1422.        when you use the Restore, Alt-R (see below), the Keep command (see
  1423.        below), or Alt-K (see below).  Thus, you can start editing a character,
  1424.        Restore the original for comparison, Restore back the edited copy and
  1425.        continue editing.  Or, after editing, Restore back the original, edit
  1426.        the original into another version of the character, and use Restore
  1427.        to compare it to the 1st version of the character.
  1428.  
  1429.        Since both Undo and Restore swap saved images with the currently
  1430.        displayed image, the two functions may interact with each other.  For
  1431.        example, an Undo will move the previous image to the screen, and put
  1432.        the current image into the undo buffer.  A Restore will then move the
  1433.        screen image (from the Undo) to the Restore buffer, and place the
  1434.        image from the Restore buffer onto the screen.  A final Undo will then
  1435.        move the current screen image, which was in the Restore buffer, into
  1436.        the Undo buffer, and move the image in the Undo buffer, which was the
  1437.        original screen image, back to the screen.  In this way, the Undo
  1438.        saved image and the Restore saved image have been swapped, and the
  1439.        screen image is untouched.
  1440.  
  1441. Keep - keep the current screen image in the Restore buffer.  This allows you
  1442.        to save a copy of the current character for possible later restoration,
  1443.        without swapping screen images.  Keep will affect only one character,
  1444.        and the cursor must be in an occupied editing matrix location.
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.  
  1457. Original - replace the current character image with the image that the
  1458.        character had when it was for selected for editing.  This is the
  1459.        ultimate undo.  Original will only affect one character, and the cursor
  1460.        must be in an occupied editing matrix location.
  1461.  
  1462.  
  1463.  
  1464. 4.3.2  "UNDO EVERYTHING" GROUP (enter the indicated keys for the function):
  1465.  
  1466. Undo  - Undo affects all characters being edited.  See the above description
  1467.         for details.
  1468.  
  1469. Alt-R - Restore all characters being edited.  This command is like the Restore
  1470.         discussed above, except that all current images are swapped with the
  1471.         saved images.  The same comments as above apply, except that the
  1472.         cursor does not have to be in an occupied location in the editing
  1473.         matrix.
  1474.  
  1475. Alt-K - Keep the current image of all characters being edited in the Restore
  1476.         buffer.  The same comments as for Keep above, except that the cursor
  1477.         does not have to be in an occupied location in the editing matrix.
  1478.  
  1479. Alt-O - replace all current screen images with the images that the characters
  1480.         had when they were first selected for editing.  This is the
  1481.         ultimate undo.  The cursor does not have to be in an occupied location
  1482.         in the editing matrix for this command.
  1483.  
  1484. Please refer to the caveat concerning these functions in section 4.2.7.
  1485.  
  1486.  
  1487.  
  1488.  
  1489.  
  1490.  
  1491.  
  1492.  
  1493.  
  1494.  
  1495.  
  1496.  
  1497.  
  1498.  
  1499.  
  1500.  
  1501.  
  1502.  
  1503.  
  1504.  
  1505.  
  1506.  
  1507.  
  1508.  
  1509.  
  1510.  
  1511.  
  1512.  
  1513.  
  1514.  
  1515.  
  1516.  
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522. 4.4  "TRYOUT" MODE (enter "T" for the function):
  1523.  
  1524.     This mode allows you to "try out" the current character set by letting
  1525.     you type characters onto a blank screen.  Pressing the Esc key while in
  1526.     Tryout mode returns you to editing.
  1527.  
  1528.     When in Tryit mode, the keys on the numeric keypad
  1529.  
  1530.                   Home   Up    PgUp
  1531.                   Right        Left
  1532.                   End    Down  PgDn
  1533.  
  1534.     move the cursor, with Home, PgUp, End, and PgDn moving the cursor in a
  1535.     diagonal direction.  The cursor wraps to the opposite side of the screen
  1536.     when it passes the screen boundary.  Please note that keys such as Return 
  1537.     and Backspace do not have their expected function.  They will instead 
  1538.     display the symbol associated with with the ASCII value of that key.
  1539.  
  1540.     When Tryit mode is first entered, the screen will be filled with spaces
  1541.     (or whatever symbol is associated with the ASCII value 32).  After you
  1542.     leave Tryit, coming back later will present the screen as you left it.
  1543.     Thus, you can try a block of text, leave and edit the character set, then
  1544.     return and see how the text looks with the new characters without having to 
  1545.     retype them.
  1546.  
  1547.     Both the character set being edited and the machine's resident character
  1548.     set are available in Tryit mode.  See the functions listed below for
  1549.     details on using both.
  1550.  
  1551.     The following functions are available via the indicated function keys in
  1552.     Tryit mode:
  1553.  
  1554.     F1 - Clear the screen and display both the character set being edited and
  1555.          the machine's resident character set.
  1556.  
  1557.     F3 - Clear the screen to spaces and DO NOT replot the display.  The
  1558.          screen does not replot, to give you relief in the event that the
  1559.          space character is not blank.
  1560.  
  1561.     F2 - Toggle 40/80 column mode.  The screen starts out with 40 columns, and
  1562.          pressing the F2 key will switch the screen to 80 columns and back.
  1563.          Note that characters entered in the right half of the screen in 80
  1564.          column mode will not be displayed when you switch back to 40 column
  1565.          mode, but will still be there if you switch back to 80 columns.
  1566.          Clearing the screen via either F1 or F3 (see above) will clear the
  1567.          entire 80 columns, even if you are in 40 column mode.
  1568.  
  1569.     F4 - Toggle resident/editing character set on the displayed characters.
  1570.          For example, You can type a sentence in the editing character set,
  1571.          press F4 to see it in the machine's resident character set, then
  1572.          press F4 again to return it to the editing character set.  Another
  1573.          example is to use F1 to display both character sets, then F4 to
  1574.          switch them.
  1575.  
  1576.  
  1577.  
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.     F6 - Toggle resident/editing character set on characters being typed.
  1589.          When you enter Tryit mode, the characters you type are in the
  1590.          editing character set.  Pressing F6 will change the characters
  1591.          being typed to the machine's resident character set.  Pressing F6
  1592.          again will change back to the editing character set.
  1593.  
  1594.     F8 - Change the color of characters being typed (40 column mode only).
  1595.          When you start in Tryit mode, characters are white.  Pressing F8
  1596.          change the color of characters being typed from white to cyan to
  1597.          magenta, and back to white.  Characters in 80 column mode are
  1598.          available only in white.
  1599.  
  1600.     F10 - Help!  Print a brief description of the available function keys.
  1601.  
  1602.  
  1603.  
  1604.  
  1605. 4.5  MISCELLANEOUS FUNCTIONS (enter the indicated keys for the command):
  1606.  
  1607. F10 - The help key.  It displays a list of the available commands, and a
  1608.       brief explanation of each.  The list is several pages long, and you
  1609.       can return to editing without looking through the entire help list
  1610.       by pressing the Esc key.
  1611.  
  1612. F9  - This will display the character codes (described above) superimposed
  1613.       on the characters in the editing matrix.  This lets you know the
  1614.       codes to use later in displaying the images you have created.  Pressing
  1615.       any key will return you to editing.
  1616.  
  1617. Esc - When you are editing charcters, you can return to the main menu by
  1618.       pressing the Esc key.
  1619.  
  1620.  
  1621.  
  1622.  
  1623.                          END OF DOCUMENT
  1624.  
  1625.  
  1626.  
  1627.  
  1628.  
  1629.  
  1630.  
  1631.  
  1632.  
  1633.  
  1634.  
  1635.  
  1636.  
  1637.  
  1638.  
  1639.  
  1640.  
  1641.  
  1642.  
  1643.  
  1644.  
  1645.  
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  
  1651.